/** @type {import('@rspack/test-tools').TStatsAPICaseConfig} */
module.exports = {
	description: "should have usedExports and providedExports stats",
	options(context) {
		return {
			context: context.getSource(),
			entry: {
				main: "./fixtures/esm/abc"
			},
			optimization: {
				usedExports: true,
				providedExports: true
			}
		};
	},
	async check(stats) {
		const statsOptions = {
			usedExports: true,
			providedExports: true,
			timings: false,
			builtAt: false,
			version: false
		};
		expect(typeof stats?.hash).toBe("string");
		expect(stats?.toJson(statsOptions)).toMatchInlineSnapshot(`
			Object {
			  assets: Array [
			    Object {
			      auxiliaryChunkIdHints: Array [],
			      auxiliaryChunkNames: Array [],
			      auxiliaryChunks: Array [],
			      cached: false,
			      chunkIdHints: Array [],
			      chunkNames: Array [
			        main,
			      ],
			      chunks: Array [
			        889,
			      ],
			      emitted: true,
			      filteredRelated: 0,
			      info: Object {
			        chunkhash: Array [],
			        contenthash: Array [],
			        fullhash: Array [],
			        isOverSizeLimit: false,
			        javascriptModule: false,
			        minimized: true,
			        related: Object {},
			      },
			      isOverSizeLimit: false,
			      name: main.js,
			      related: Array [],
			      size: 412,
			      type: asset,
			    },
			  ],
			  assetsByChunkName: Object {
			    main: Array [
			      main.js,
			    ],
			  },
			  children: Array [],
			  chunks: Array [
			    Object {
			      auxiliaryFiles: Array [],
			      children: Array [],
			      childrenByOrder: Object {},
			      entry: true,
			      files: Array [
			        main.js,
			      ],
			      filteredModules: undefined,
			      hash: 2a4fcd21c37fffc7,
			      id: 889,
			      idHints: Array [],
			      initial: true,
			      modules: Array [
			        Object {
			          assets: Array [],
			          buildTimeExecuted: false,
			          built: false,
			          cacheable: true,
			          cached: false,
			          chunks: Array [
			            889,
			          ],
			          codeGenerated: true,
			          dependent: false,
			          depth: 0,
			          errors: 0,
			          failed: false,
			          filteredModules: undefined,
			          filteredReasons: undefined,
			          id: 604,
			          identifier: <TEST_ROOT>/fixtures/esm/abc.js|0e47874493fdefd960142324ecb88ecc,
			          index: 0,
			          index2: 3,
			          issuer: undefined,
			          issuerId: undefined,
			          issuerName: undefined,
			          issuerPath: undefined,
			          layer: undefined,
			          moduleType: javascript/esm,
			          modules: Array [
			            Object {
			              assets: Array [],
			              buildTimeExecuted: false,
			              built: true,
			              cacheable: true,
			              cached: false,
			              chunks: Array [],
			              codeGenerated: false,
			              dependent: true,
			              depth: 0,
			              errors: 0,
			              failed: false,
			              filteredReasons: undefined,
			              id: undefined,
			              identifier: <TEST_ROOT>/fixtures/esm/abc.js,
			              index: 0,
			              index2: 3,
			              issuer: undefined,
			              issuerId: undefined,
			              issuerName: undefined,
			              issuerPath: undefined,
			              layer: undefined,
			              moduleType: javascript/auto,
			              name: ./fixtures/esm/abc.js,
			              nameForCondition: <TEST_ROOT>/fixtures/esm/abc.js,
			              optimizationBailout: Array [
			                ModuleConcatenation bailout: Module is an entry point,
			              ],
			              optional: false,
			              orphan: true,
			              postOrderIndex: 3,
			              preOrderIndex: 0,
			              providedExports: Array [],
			              reasons: Array [],
			              size: 80,
			              sizes: Object {
			                javascript: 80,
			              },
			              type: module,
			              usedExports: Array [],
			              warnings: 0,
			            },
			            Object {
			              assets: Array [],
			              buildTimeExecuted: false,
			              built: true,
			              cacheable: true,
			              cached: false,
			              chunks: Array [],
			              codeGenerated: false,
			              dependent: true,
			              depth: 1,
			              errors: 0,
			              failed: false,
			              filteredReasons: undefined,
			              id: undefined,
			              identifier: <TEST_ROOT>/fixtures/esm/a.js,
			              index: 1,
			              index2: 0,
			              issuer: <TEST_ROOT>/fixtures/esm/abc.js,
			              issuerId: undefined,
			              issuerName: ./fixtures/esm/abc.js,
			              issuerPath: Array [
			                Object {
			                  id: undefined,
			                  identifier: <TEST_ROOT>/fixtures/esm/abc.js,
			                  name: ./fixtures/esm/abc.js,
			                },
			              ],
			              layer: undefined,
			              moduleType: javascript/auto,
			              name: ./fixtures/esm/a.js,
			              nameForCondition: <TEST_ROOT>/fixtures/esm/a.js,
			              optimizationBailout: Array [],
			              optional: false,
			              orphan: true,
			              postOrderIndex: 0,
			              preOrderIndex: 1,
			              providedExports: Array [
			                a,
			                default,
			              ],
			              reasons: Array [
			                Object {
			                  active: false,
			                  explanation: undefined,
			                  loc: 1:0-24,
			                  moduleId: undefined,
			                  moduleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			                  moduleName: ./fixtures/esm/abc.js,
			                  resolvedModule: ./fixtures/esm/abc.js,
			                  resolvedModuleId: undefined,
			                  resolvedModuleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			                  type: esm import,
			                  userRequest: ./a,
			                },
			                Object {
			                  active: true,
			                  explanation: undefined,
			                  loc: 5:0-1,
			                  moduleId: undefined,
			                  moduleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			                  moduleName: ./fixtures/esm/abc.js,
			                  resolvedModule: ./fixtures/esm/abc.js,
			                  resolvedModuleId: undefined,
			                  resolvedModuleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			                  type: esm import specifier,
			                  userRequest: ./a,
			                },
			              ],
			              size: 37,
			              sizes: Object {
			                javascript: 37,
			              },
			              type: module,
			              usedExports: Array [
			                a,
			              ],
			              warnings: 0,
			            },
			            Object {
			              assets: Array [],
			              buildTimeExecuted: false,
			              built: true,
			              cacheable: true,
			              cached: false,
			              chunks: Array [],
			              codeGenerated: false,
			              dependent: true,
			              depth: 1,
			              errors: 0,
			              failed: false,
			              filteredReasons: undefined,
			              id: undefined,
			              identifier: <TEST_ROOT>/fixtures/esm/b.js,
			              index: 2,
			              index2: 1,
			              issuer: <TEST_ROOT>/fixtures/esm/abc.js,
			              issuerId: undefined,
			              issuerName: ./fixtures/esm/abc.js,
			              issuerPath: Array [
			                Object {
			                  id: undefined,
			                  identifier: <TEST_ROOT>/fixtures/esm/abc.js,
			                  name: ./fixtures/esm/abc.js,
			                },
			              ],
			              layer: undefined,
			              moduleType: javascript/auto,
			              name: ./fixtures/esm/b.js,
			              nameForCondition: <TEST_ROOT>/fixtures/esm/b.js,
			              optimizationBailout: Array [],
			              optional: false,
			              orphan: true,
			              postOrderIndex: 1,
			              preOrderIndex: 2,
			              providedExports: Array [
			                b,
			                default,
			              ],
			              reasons: Array [
			                Object {
			                  active: false,
			                  explanation: undefined,
			                  loc: 2:0-20,
			                  moduleId: undefined,
			                  moduleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			                  moduleName: ./fixtures/esm/abc.js,
			                  resolvedModule: ./fixtures/esm/abc.js,
			                  resolvedModuleId: undefined,
			                  resolvedModuleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			                  type: esm import,
			                  userRequest: ./b,
			                },
			                Object {
			                  active: true,
			                  explanation: undefined,
			                  loc: 5:3-4,
			                  moduleId: undefined,
			                  moduleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			                  moduleName: ./fixtures/esm/abc.js,
			                  resolvedModule: ./fixtures/esm/abc.js,
			                  resolvedModuleId: undefined,
			                  resolvedModuleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			                  type: esm import specifier,
			                  userRequest: ./b,
			                },
			              ],
			              size: 38,
			              sizes: Object {
			                javascript: 38,
			              },
			              type: module,
			              usedExports: Array [
			                default,
			              ],
			              warnings: 0,
			            },
			            Object {
			              assets: Array [],
			              buildTimeExecuted: false,
			              built: true,
			              cacheable: true,
			              cached: false,
			              chunks: Array [],
			              codeGenerated: false,
			              dependent: true,
			              depth: 1,
			              errors: 0,
			              failed: false,
			              filteredReasons: undefined,
			              id: undefined,
			              identifier: <TEST_ROOT>/fixtures/esm/c.js,
			              index: 3,
			              index2: 2,
			              issuer: <TEST_ROOT>/fixtures/esm/abc.js,
			              issuerId: undefined,
			              issuerName: ./fixtures/esm/abc.js,
			              issuerPath: Array [
			                Object {
			                  id: undefined,
			                  identifier: <TEST_ROOT>/fixtures/esm/abc.js,
			                  name: ./fixtures/esm/abc.js,
			                },
			              ],
			              layer: undefined,
			              moduleType: javascript/auto,
			              name: ./fixtures/esm/c.js,
			              nameForCondition: <TEST_ROOT>/fixtures/esm/c.js,
			              optimizationBailout: Array [],
			              optional: false,
			              orphan: true,
			              postOrderIndex: 2,
			              preOrderIndex: 3,
			              providedExports: Array [
			                c,
			                default,
			              ],
			              reasons: Array [
			                Object {
			                  active: false,
			                  explanation: undefined,
			                  loc: 3:0-25,
			                  moduleId: undefined,
			                  moduleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			                  moduleName: ./fixtures/esm/abc.js,
			                  resolvedModule: ./fixtures/esm/abc.js,
			                  resolvedModuleId: undefined,
			                  resolvedModuleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			                  type: esm import,
			                  userRequest: ./c,
			                },
			                Object {
			                  active: true,
			                  explanation: undefined,
			                  loc: 5:6-7,
			                  moduleId: undefined,
			                  moduleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			                  moduleName: ./fixtures/esm/abc.js,
			                  resolvedModule: ./fixtures/esm/abc.js,
			                  resolvedModuleId: undefined,
			                  resolvedModuleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			                  type: esm import specifier,
			                  userRequest: ./c,
			                },
			              ],
			              size: 37,
			              sizes: Object {
			                javascript: 37,
			              },
			              type: module,
			              usedExports: true,
			              warnings: 0,
			            },
			          ],
			          name: ./fixtures/esm/abc.js + 3 modules,
			          nameForCondition: <TEST_ROOT>/fixtures/esm/abc.js,
			          optimizationBailout: Array [],
			          optional: false,
			          orphan: false,
			          postOrderIndex: 3,
			          preOrderIndex: 0,
			          providedExports: Array [],
			          reasons: Array [
			            Object {
			              active: true,
			              explanation: undefined,
			              loc: undefined,
			              moduleId: null,
			              resolvedModuleId: null,
			              type: entry,
			              userRequest: ./fixtures/esm/abc,
			            },
			          ],
			          size: 192,
			          sizes: Object {
			            javascript: 192,
			          },
			          type: module,
			          usedExports: Array [],
			          warnings: 0,
			        },
			      ],
			      names: Array [
			        main,
			      ],
			      origins: Array [
			        Object {
			          loc: main,
			          module: ,
			          moduleId: undefined,
			          moduleIdentifier: ,
			          moduleName: ,
			          request: ./fixtures/esm/abc,
			        },
			      ],
			      parents: Array [],
			      reason: undefined,
			      rendered: true,
			      runtime: Array [
			        main,
			      ],
			      siblings: Array [],
			      size: 192,
			      sizes: Object {
			        javascript: 192,
			        runtime: 647,
			      },
			      type: chunk,
			    },
			  ],
			  entrypoints: Object {
			    main: Object {
			      assets: Array [
			        Object {
			          name: main.js,
			          size: 412,
			        },
			      ],
			      assetsSize: 412,
			      auxiliaryAssets: Array [],
			      auxiliaryAssetsSize: 0,
			      childAssets: Object {},
			      children: Object {},
			      chunks: Array [
			        889,
			      ],
			      filteredAssets: 0,
			      isOverSizeLimit: false,
			      name: main,
			    },
			  },
			  errors: Array [],
			  errorsCount: 0,
			  filteredAssets: undefined,
			  filteredModules: undefined,
			  hash: 4114978a03e09ff7,
			  modules: Array [
			    Object {
			      assets: Array [],
			      buildTimeExecuted: false,
			      built: true,
			      cacheable: true,
			      cached: false,
			      chunks: Array [],
			      codeGenerated: false,
			      dependent: undefined,
			      depth: 0,
			      errors: 0,
			      failed: false,
			      filteredReasons: undefined,
			      id: undefined,
			      identifier: <TEST_ROOT>/fixtures/esm/abc.js,
			      index: 0,
			      index2: 3,
			      issuer: undefined,
			      issuerId: undefined,
			      issuerName: undefined,
			      issuerPath: undefined,
			      layer: undefined,
			      moduleType: javascript/auto,
			      name: ./fixtures/esm/abc.js,
			      nameForCondition: <TEST_ROOT>/fixtures/esm/abc.js,
			      optimizationBailout: Array [
			        ModuleConcatenation bailout: Module is an entry point,
			      ],
			      optional: false,
			      orphan: true,
			      postOrderIndex: 3,
			      preOrderIndex: 0,
			      providedExports: Array [],
			      reasons: Array [],
			      size: 80,
			      sizes: Object {
			        javascript: 80,
			      },
			      type: module,
			      usedExports: Array [],
			      warnings: 0,
			    },
			    Object {
			      assets: Array [],
			      buildTimeExecuted: false,
			      built: false,
			      cacheable: true,
			      cached: false,
			      chunks: Array [
			        889,
			      ],
			      codeGenerated: true,
			      dependent: undefined,
			      depth: 0,
			      errors: 0,
			      failed: false,
			      filteredModules: undefined,
			      filteredReasons: undefined,
			      id: 604,
			      identifier: <TEST_ROOT>/fixtures/esm/abc.js|0e47874493fdefd960142324ecb88ecc,
			      index: 0,
			      index2: 3,
			      issuer: undefined,
			      issuerId: undefined,
			      issuerName: undefined,
			      issuerPath: undefined,
			      layer: undefined,
			      moduleType: javascript/esm,
			      modules: Array [
			        Object {
			          assets: Array [],
			          buildTimeExecuted: false,
			          built: true,
			          cacheable: true,
			          cached: false,
			          chunks: Array [],
			          codeGenerated: false,
			          dependent: undefined,
			          depth: 0,
			          errors: 0,
			          failed: false,
			          filteredReasons: undefined,
			          id: undefined,
			          identifier: <TEST_ROOT>/fixtures/esm/abc.js,
			          index: 0,
			          index2: 3,
			          issuer: undefined,
			          issuerId: undefined,
			          issuerName: undefined,
			          issuerPath: undefined,
			          layer: undefined,
			          moduleType: javascript/auto,
			          name: ./fixtures/esm/abc.js,
			          nameForCondition: <TEST_ROOT>/fixtures/esm/abc.js,
			          optimizationBailout: Array [
			            ModuleConcatenation bailout: Module is an entry point,
			          ],
			          optional: false,
			          orphan: true,
			          postOrderIndex: 3,
			          preOrderIndex: 0,
			          providedExports: Array [],
			          reasons: Array [],
			          size: 80,
			          sizes: Object {
			            javascript: 80,
			          },
			          type: module,
			          usedExports: Array [],
			          warnings: 0,
			        },
			        Object {
			          assets: Array [],
			          buildTimeExecuted: false,
			          built: true,
			          cacheable: true,
			          cached: false,
			          chunks: Array [],
			          codeGenerated: false,
			          dependent: undefined,
			          depth: 1,
			          errors: 0,
			          failed: false,
			          filteredReasons: undefined,
			          id: undefined,
			          identifier: <TEST_ROOT>/fixtures/esm/a.js,
			          index: 1,
			          index2: 0,
			          issuer: <TEST_ROOT>/fixtures/esm/abc.js,
			          issuerId: undefined,
			          issuerName: ./fixtures/esm/abc.js,
			          issuerPath: Array [
			            Object {
			              id: undefined,
			              identifier: <TEST_ROOT>/fixtures/esm/abc.js,
			              name: ./fixtures/esm/abc.js,
			            },
			          ],
			          layer: undefined,
			          moduleType: javascript/auto,
			          name: ./fixtures/esm/a.js,
			          nameForCondition: <TEST_ROOT>/fixtures/esm/a.js,
			          optimizationBailout: Array [],
			          optional: false,
			          orphan: true,
			          postOrderIndex: 0,
			          preOrderIndex: 1,
			          providedExports: Array [
			            a,
			            default,
			          ],
			          reasons: Array [
			            Object {
			              active: false,
			              explanation: undefined,
			              loc: 1:0-24,
			              moduleId: undefined,
			              moduleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			              moduleName: ./fixtures/esm/abc.js,
			              resolvedModule: ./fixtures/esm/abc.js,
			              resolvedModuleId: undefined,
			              resolvedModuleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			              type: esm import,
			              userRequest: ./a,
			            },
			            Object {
			              active: true,
			              explanation: undefined,
			              loc: 5:0-1,
			              moduleId: undefined,
			              moduleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			              moduleName: ./fixtures/esm/abc.js,
			              resolvedModule: ./fixtures/esm/abc.js,
			              resolvedModuleId: undefined,
			              resolvedModuleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			              type: esm import specifier,
			              userRequest: ./a,
			            },
			          ],
			          size: 37,
			          sizes: Object {
			            javascript: 37,
			          },
			          type: module,
			          usedExports: Array [
			            a,
			          ],
			          warnings: 0,
			        },
			        Object {
			          assets: Array [],
			          buildTimeExecuted: false,
			          built: true,
			          cacheable: true,
			          cached: false,
			          chunks: Array [],
			          codeGenerated: false,
			          dependent: undefined,
			          depth: 1,
			          errors: 0,
			          failed: false,
			          filteredReasons: undefined,
			          id: undefined,
			          identifier: <TEST_ROOT>/fixtures/esm/b.js,
			          index: 2,
			          index2: 1,
			          issuer: <TEST_ROOT>/fixtures/esm/abc.js,
			          issuerId: undefined,
			          issuerName: ./fixtures/esm/abc.js,
			          issuerPath: Array [
			            Object {
			              id: undefined,
			              identifier: <TEST_ROOT>/fixtures/esm/abc.js,
			              name: ./fixtures/esm/abc.js,
			            },
			          ],
			          layer: undefined,
			          moduleType: javascript/auto,
			          name: ./fixtures/esm/b.js,
			          nameForCondition: <TEST_ROOT>/fixtures/esm/b.js,
			          optimizationBailout: Array [],
			          optional: false,
			          orphan: true,
			          postOrderIndex: 1,
			          preOrderIndex: 2,
			          providedExports: Array [
			            b,
			            default,
			          ],
			          reasons: Array [
			            Object {
			              active: false,
			              explanation: undefined,
			              loc: 2:0-20,
			              moduleId: undefined,
			              moduleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			              moduleName: ./fixtures/esm/abc.js,
			              resolvedModule: ./fixtures/esm/abc.js,
			              resolvedModuleId: undefined,
			              resolvedModuleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			              type: esm import,
			              userRequest: ./b,
			            },
			            Object {
			              active: true,
			              explanation: undefined,
			              loc: 5:3-4,
			              moduleId: undefined,
			              moduleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			              moduleName: ./fixtures/esm/abc.js,
			              resolvedModule: ./fixtures/esm/abc.js,
			              resolvedModuleId: undefined,
			              resolvedModuleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			              type: esm import specifier,
			              userRequest: ./b,
			            },
			          ],
			          size: 38,
			          sizes: Object {
			            javascript: 38,
			          },
			          type: module,
			          usedExports: Array [
			            default,
			          ],
			          warnings: 0,
			        },
			        Object {
			          assets: Array [],
			          buildTimeExecuted: false,
			          built: true,
			          cacheable: true,
			          cached: false,
			          chunks: Array [],
			          codeGenerated: false,
			          dependent: undefined,
			          depth: 1,
			          errors: 0,
			          failed: false,
			          filteredReasons: undefined,
			          id: undefined,
			          identifier: <TEST_ROOT>/fixtures/esm/c.js,
			          index: 3,
			          index2: 2,
			          issuer: <TEST_ROOT>/fixtures/esm/abc.js,
			          issuerId: undefined,
			          issuerName: ./fixtures/esm/abc.js,
			          issuerPath: Array [
			            Object {
			              id: undefined,
			              identifier: <TEST_ROOT>/fixtures/esm/abc.js,
			              name: ./fixtures/esm/abc.js,
			            },
			          ],
			          layer: undefined,
			          moduleType: javascript/auto,
			          name: ./fixtures/esm/c.js,
			          nameForCondition: <TEST_ROOT>/fixtures/esm/c.js,
			          optimizationBailout: Array [],
			          optional: false,
			          orphan: true,
			          postOrderIndex: 2,
			          preOrderIndex: 3,
			          providedExports: Array [
			            c,
			            default,
			          ],
			          reasons: Array [
			            Object {
			              active: false,
			              explanation: undefined,
			              loc: 3:0-25,
			              moduleId: undefined,
			              moduleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			              moduleName: ./fixtures/esm/abc.js,
			              resolvedModule: ./fixtures/esm/abc.js,
			              resolvedModuleId: undefined,
			              resolvedModuleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			              type: esm import,
			              userRequest: ./c,
			            },
			            Object {
			              active: true,
			              explanation: undefined,
			              loc: 5:6-7,
			              moduleId: undefined,
			              moduleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			              moduleName: ./fixtures/esm/abc.js,
			              resolvedModule: ./fixtures/esm/abc.js,
			              resolvedModuleId: undefined,
			              resolvedModuleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			              type: esm import specifier,
			              userRequest: ./c,
			            },
			          ],
			          size: 37,
			          sizes: Object {
			            javascript: 37,
			          },
			          type: module,
			          usedExports: true,
			          warnings: 0,
			        },
			      ],
			      name: ./fixtures/esm/abc.js + 3 modules,
			      nameForCondition: <TEST_ROOT>/fixtures/esm/abc.js,
			      optimizationBailout: Array [],
			      optional: false,
			      orphan: false,
			      postOrderIndex: 3,
			      preOrderIndex: 0,
			      providedExports: Array [],
			      reasons: Array [
			        Object {
			          active: true,
			          explanation: undefined,
			          loc: undefined,
			          moduleId: null,
			          resolvedModuleId: null,
			          type: entry,
			          userRequest: ./fixtures/esm/abc,
			        },
			      ],
			      size: 192,
			      sizes: Object {
			        javascript: 192,
			      },
			      type: module,
			      usedExports: Array [],
			      warnings: 0,
			    },
			    Object {
			      assets: Array [],
			      buildTimeExecuted: false,
			      built: true,
			      cacheable: true,
			      cached: false,
			      chunks: Array [],
			      codeGenerated: false,
			      dependent: undefined,
			      depth: 1,
			      errors: 0,
			      failed: false,
			      filteredReasons: undefined,
			      id: undefined,
			      identifier: <TEST_ROOT>/fixtures/esm/a.js,
			      index: 1,
			      index2: 0,
			      issuer: <TEST_ROOT>/fixtures/esm/abc.js,
			      issuerId: undefined,
			      issuerName: ./fixtures/esm/abc.js,
			      issuerPath: Array [
			        Object {
			          id: undefined,
			          identifier: <TEST_ROOT>/fixtures/esm/abc.js,
			          name: ./fixtures/esm/abc.js,
			        },
			      ],
			      layer: undefined,
			      moduleType: javascript/auto,
			      name: ./fixtures/esm/a.js,
			      nameForCondition: <TEST_ROOT>/fixtures/esm/a.js,
			      optimizationBailout: Array [],
			      optional: false,
			      orphan: true,
			      postOrderIndex: 0,
			      preOrderIndex: 1,
			      providedExports: Array [
			        a,
			        default,
			      ],
			      reasons: Array [
			        Object {
			          active: false,
			          explanation: undefined,
			          loc: 1:0-24,
			          moduleId: undefined,
			          moduleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			          moduleName: ./fixtures/esm/abc.js,
			          resolvedModule: ./fixtures/esm/abc.js,
			          resolvedModuleId: undefined,
			          resolvedModuleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			          type: esm import,
			          userRequest: ./a,
			        },
			        Object {
			          active: true,
			          explanation: undefined,
			          loc: 5:0-1,
			          moduleId: undefined,
			          moduleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			          moduleName: ./fixtures/esm/abc.js,
			          resolvedModule: ./fixtures/esm/abc.js,
			          resolvedModuleId: undefined,
			          resolvedModuleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			          type: esm import specifier,
			          userRequest: ./a,
			        },
			      ],
			      size: 37,
			      sizes: Object {
			        javascript: 37,
			      },
			      type: module,
			      usedExports: Array [
			        a,
			      ],
			      warnings: 0,
			    },
			    Object {
			      assets: Array [],
			      buildTimeExecuted: false,
			      built: true,
			      cacheable: true,
			      cached: false,
			      chunks: Array [],
			      codeGenerated: false,
			      dependent: undefined,
			      depth: 1,
			      errors: 0,
			      failed: false,
			      filteredReasons: undefined,
			      id: undefined,
			      identifier: <TEST_ROOT>/fixtures/esm/b.js,
			      index: 2,
			      index2: 1,
			      issuer: <TEST_ROOT>/fixtures/esm/abc.js,
			      issuerId: undefined,
			      issuerName: ./fixtures/esm/abc.js,
			      issuerPath: Array [
			        Object {
			          id: undefined,
			          identifier: <TEST_ROOT>/fixtures/esm/abc.js,
			          name: ./fixtures/esm/abc.js,
			        },
			      ],
			      layer: undefined,
			      moduleType: javascript/auto,
			      name: ./fixtures/esm/b.js,
			      nameForCondition: <TEST_ROOT>/fixtures/esm/b.js,
			      optimizationBailout: Array [],
			      optional: false,
			      orphan: true,
			      postOrderIndex: 1,
			      preOrderIndex: 2,
			      providedExports: Array [
			        b,
			        default,
			      ],
			      reasons: Array [
			        Object {
			          active: false,
			          explanation: undefined,
			          loc: 2:0-20,
			          moduleId: undefined,
			          moduleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			          moduleName: ./fixtures/esm/abc.js,
			          resolvedModule: ./fixtures/esm/abc.js,
			          resolvedModuleId: undefined,
			          resolvedModuleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			          type: esm import,
			          userRequest: ./b,
			        },
			        Object {
			          active: true,
			          explanation: undefined,
			          loc: 5:3-4,
			          moduleId: undefined,
			          moduleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			          moduleName: ./fixtures/esm/abc.js,
			          resolvedModule: ./fixtures/esm/abc.js,
			          resolvedModuleId: undefined,
			          resolvedModuleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			          type: esm import specifier,
			          userRequest: ./b,
			        },
			      ],
			      size: 38,
			      sizes: Object {
			        javascript: 38,
			      },
			      type: module,
			      usedExports: Array [
			        default,
			      ],
			      warnings: 0,
			    },
			    Object {
			      assets: Array [],
			      buildTimeExecuted: false,
			      built: true,
			      cacheable: true,
			      cached: false,
			      chunks: Array [],
			      codeGenerated: false,
			      dependent: undefined,
			      depth: 1,
			      errors: 0,
			      failed: false,
			      filteredReasons: undefined,
			      id: undefined,
			      identifier: <TEST_ROOT>/fixtures/esm/c.js,
			      index: 3,
			      index2: 2,
			      issuer: <TEST_ROOT>/fixtures/esm/abc.js,
			      issuerId: undefined,
			      issuerName: ./fixtures/esm/abc.js,
			      issuerPath: Array [
			        Object {
			          id: undefined,
			          identifier: <TEST_ROOT>/fixtures/esm/abc.js,
			          name: ./fixtures/esm/abc.js,
			        },
			      ],
			      layer: undefined,
			      moduleType: javascript/auto,
			      name: ./fixtures/esm/c.js,
			      nameForCondition: <TEST_ROOT>/fixtures/esm/c.js,
			      optimizationBailout: Array [],
			      optional: false,
			      orphan: true,
			      postOrderIndex: 2,
			      preOrderIndex: 3,
			      providedExports: Array [
			        c,
			        default,
			      ],
			      reasons: Array [
			        Object {
			          active: false,
			          explanation: undefined,
			          loc: 3:0-25,
			          moduleId: undefined,
			          moduleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			          moduleName: ./fixtures/esm/abc.js,
			          resolvedModule: ./fixtures/esm/abc.js,
			          resolvedModuleId: undefined,
			          resolvedModuleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			          type: esm import,
			          userRequest: ./c,
			        },
			        Object {
			          active: true,
			          explanation: undefined,
			          loc: 5:6-7,
			          moduleId: undefined,
			          moduleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			          moduleName: ./fixtures/esm/abc.js,
			          resolvedModule: ./fixtures/esm/abc.js,
			          resolvedModuleId: undefined,
			          resolvedModuleIdentifier: <TEST_ROOT>/fixtures/esm/abc.js,
			          type: esm import specifier,
			          userRequest: ./c,
			        },
			      ],
			      size: 37,
			      sizes: Object {
			        javascript: 37,
			      },
			      type: module,
			      usedExports: true,
			      warnings: 0,
			    },
			    Object {
			      assets: Array [],
			      buildTimeExecuted: false,
			      built: false,
			      cacheable: true,
			      cached: false,
			      chunks: Array [
			        889,
			      ],
			      codeGenerated: true,
			      dependent: false,
			      depth: undefined,
			      errors: 0,
			      failed: false,
			      filteredReasons: undefined,
			      id: ,
			      identifier: webpack/runtime/define_property_getters,
			      index: undefined,
			      index2: undefined,
			      issuer: undefined,
			      issuerId: undefined,
			      issuerName: undefined,
			      issuerPath: undefined,
			      layer: undefined,
			      moduleType: runtime,
			      name: webpack/runtime/define_property_getters,
			      nameForCondition: undefined,
			      optimizationBailout: Array [],
			      optional: false,
			      orphan: false,
			      postOrderIndex: undefined,
			      preOrderIndex: undefined,
			      providedExports: Array [],
			      reasons: Array [],
			      size: 285,
			      sizes: Object {
			        runtime: 285,
			      },
			      type: module,
			      usedExports: null,
			      warnings: 0,
			    },
			    Object {
			      assets: Array [],
			      buildTimeExecuted: false,
			      built: false,
			      cacheable: true,
			      cached: false,
			      chunks: Array [
			        889,
			      ],
			      codeGenerated: true,
			      dependent: false,
			      depth: undefined,
			      errors: 0,
			      failed: false,
			      filteredReasons: undefined,
			      id: ,
			      identifier: webpack/runtime/has_own_property,
			      index: undefined,
			      index2: undefined,
			      issuer: undefined,
			      issuerId: undefined,
			      issuerName: undefined,
			      issuerPath: undefined,
			      layer: undefined,
			      moduleType: runtime,
			      name: webpack/runtime/has_own_property,
			      nameForCondition: undefined,
			      optimizationBailout: Array [],
			      optional: false,
			      orphan: false,
			      postOrderIndex: undefined,
			      preOrderIndex: undefined,
			      providedExports: Array [],
			      reasons: Array [],
			      size: 88,
			      sizes: Object {
			        runtime: 88,
			      },
			      type: module,
			      usedExports: null,
			      warnings: 0,
			    },
			    Object {
			      assets: Array [],
			      buildTimeExecuted: false,
			      built: false,
			      cacheable: true,
			      cached: false,
			      chunks: Array [
			        889,
			      ],
			      codeGenerated: true,
			      dependent: false,
			      depth: undefined,
			      errors: 0,
			      failed: false,
			      filteredReasons: undefined,
			      id: ,
			      identifier: webpack/runtime/make_namespace_object,
			      index: undefined,
			      index2: undefined,
			      issuer: undefined,
			      issuerId: undefined,
			      issuerName: undefined,
			      issuerPath: undefined,
			      layer: undefined,
			      moduleType: runtime,
			      name: webpack/runtime/make_namespace_object,
			      nameForCondition: undefined,
			      optimizationBailout: Array [],
			      optional: false,
			      orphan: false,
			      postOrderIndex: undefined,
			      preOrderIndex: undefined,
			      providedExports: Array [],
			      reasons: Array [],
			      size: 274,
			      sizes: Object {
			        runtime: 274,
			      },
			      type: module,
			      usedExports: null,
			      warnings: 0,
			    },
			  ],
			  namedChunkGroups: Object {
			    main: Object {
			      assets: Array [
			        Object {
			          name: main.js,
			          size: 412,
			        },
			      ],
			      assetsSize: 412,
			      auxiliaryAssets: Array [],
			      auxiliaryAssetsSize: 0,
			      childAssets: Object {},
			      children: Object {},
			      chunks: Array [
			        889,
			      ],
			      filteredAssets: 0,
			      isOverSizeLimit: false,
			      name: main,
			    },
			  },
			  outputPath: <TEST_ROOT>/dist,
			  publicPath: auto,
			  warnings: Array [],
			  warningsCount: 0,
			}
		`);
		expect(stats?.toString(statsOptions)).toMatchInlineSnapshot(`
		asset main.js 412 bytes [emitted] (name: main)
		orphan modules 192 bytes [orphan] 4 modules
		runtime modules 647 bytes 3 modules
		./fixtures/esm/abc.js + 3 modules 192 bytes [code generated]
		  [no exports]
		  [no exports used]
		Rspack compiled successfully
	`);
	}
};
